HTML5 跨平台应用程式开发

图一:移动设备与PC市场份额

图二:全球支持Html5设备占有率

图三:开发商对HTML的支持

图四:HTML5兼容性

移动手持设备 (目前2014年)或者未来出货量将远超PC(图一)。在2016年,估计会有85%的手机配备的HTML5相容的浏览器(图2),资料显示,三分之二的行动应用程式开发商逐渐偏向使用HTML5作为开发平台。

PhoneGap简介

PhoneGap 是基于HTML5的移动应用前端开发框架。使用HTML+CSS+JavaScript,再通过PhoneGap就可以快速创建移动App。
PhoneGet能让你只使用简单的Web技术即可获得移动设备的原生特性,如摄像头、加速器、指南针等。使用这些特性,再充份发挥你的想象力,就可以实现各种类型的、特别有意思的移动应用。
PhoneGap 是完全公开开放源代码的,您可以通过编写组件,实现任何原生设备特性的扩展。之后,还可以通过PhoneGap打包App,这样编写一次基础代码就可以将App部署到多个移动平台上。

PhoneGap 环境搭建

网址: http://phonegap.com/install/

图一:移动设备与PC市场份额

【安装】

步骤1:安装NodeJS

步骤2:打开命令运行, 输入命令 npm install -g phonegap

使用npm命令安装PhoneGap时候遇到问题排查:

PhoneGap

C:\Users\Administrator> npm install -g phonegap
npm ERR! not found: git
npm ERR!
npm ERR! Failed using git.
npm ERR! This is most likely not a problem with npm itself.
npm ERR! Please check if you have git installed and in your PATH.
npm ERR! System Windows_NT 6.1.7601
npm ERR! command "D:\\Program Files\\nodejs\\\\node.exe" "D:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "phonegap"
npm ERR! cwd C:\Users\Administrator
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.14
npm ERR! code ENOGIT
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Users\Administrator\npm-debug.log
npm ERR! not ok code 0

查看 npm-debug.log 日志文件片段说明

370 error not found: git
371 error Failed using git.
371 error This is most likely not a problem with npm itself.
371 error Please check if you have git installed and in your PATH.
372 error System Windows_NT 6.1.7601
373 error command "D:\\Program Files\\nodejs\\\\node.exe""D:\\Program Files\\nodejs\\node_modules\\npm\\b  in\\npm-cli.js""install" "-g" "phonegap"
374 error cwd C:\Users\Administrator
375 error node -v v0.10.29
376 error npm -v 1.4.14
377 error code ENOGIT

NodeJs没办法识别到GIT的存在,检查GIT已经安装在本机。但还是出现“error notfound: git”。
最后发现GIT没有在环境变量中配置Path

PhoneGap
Path配置路径为:

Git安装文件路径\Git\bing
Git安装文件路径\Git\libexec\git-core

注意:多个Path配置用;分割
测试Git是否配置成功。

打开CMD 输入 Git

PhoneGap
继续使用 npm 命令 安装PhoneGap

PhoneGap
现在Phonegap已经安装了.

PhoneGap 在NodeJs实战

使用官方方式运行PhoneGap( http://phonegap.com/install/)

$ phonegap create my-app
$ cd my-app
$ phonegap run android

注意这里需要已经安装好Android-SDK 和 Java SDK 和已经配置到环境变量,因为这里ANT会调用它们。

1.使用phonegap 创建一个应用

打开CMD 使用命令 phonegap create[path] path为项目位置,如果不输入默认为:C:\Users\Administrator下
PhoneGap

2.定位到应用的文件夹位置

PhoneGap

3.使用phonegap 运行当前android应用

PhoneGap

在执行中遇到问题:
PhoneGap

Error:ERROR : executing command 'ant', make sure you have ant installed and add edto your path.

去Apache官方查询了一下ANT的资料(http://wiki.apache.org/ant/FrontPage

ApacheAnt是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基 金会所提供。默认情况下,它的buildfile(XML文件)名为build.xml。每一个buildfile含有一个和至少一个默认的,这些targets包 含许多task elements。每一个task element有一个用来被参考的id,此id必须是唯一的。

于是去apache官方下载ANT(http://ant.apache.org/
关于ANT配置方法可以查看http://pan.baidu.com/s/1lJZUQ
配置完ANT后,重新开发CMD,定位到 my-app 项目文件路径,执行 phonegap run android 命令。
Phonegap调用了android 的AVD工具(安卓模拟器),运行当前的APP效果如下:

PhoneGap
更多关于PhoneGap命令的使用可以使用CMD命令 PhoneGap Help 查看或者去它们官方网站了解。

PhoneGap在Eclipse实战

参考官方说明
http://docs.phonegap.com/en/3.5.0/guide_platforms_android_index.md.html#Android%20Platform%20Guide)

1:使用Eclipse创建Android项目(参考:http://cotide.com/xcli/Blog/Article/75)
2:安装 Cordova(http://cordova.apache.org/)

PhoneGap

3.使用NodeJS 安装 npm install –g cordova
4.使用Cordova命令创建PhoneGap项目

$ cordova create hello com.example.hello "HelloWorld"
$ cd hello
$ cordova platform add android
$ cordova build

PhoneGap

PhoneGap

最后提示

PhoneGap

5.打开Eclipse,选择File ->New -> Other -> Android projectsfrom existing code

选择生成的项目文件夹位置,导入项目。

  1. 运行项目

PhoneGap

参考资料